# import matplotlib.pyplot as plt
# import pandas as pd
# from cycler import cycler
# import numpy as np
# df = pd.read_excel('城镇单位就业人员年平均工资.xlsx',sheet_name='按行业',index_col=0)
# df.drop('城镇单位',inplace=True)
# df.drop(columns=['2001年','2002年'],inplace=True)
# df.sort_index(axis=1,inplace=True)
# plt.rcParams['figure.figsize'] = (12,8)
# plt.rcParams['font.sans-serif']= 'SimHei'
# colors = []
# for i in range(len(df)):
#     r = np.random.rand()
#     g = np.random.rand()
#     b = np.random.rand()
#     colors.append(r,g,b)
# plt.rcParams['axes.prop_cycle']  = cycler(color=colors)
# plt.title('')

# import matplotlib.pyplot as plt
# import pandas as pd
# df = pd.read_excel('餐饮综合数据.xlsx',sheet_name='订单详情表',index_col=0)
# plt.rcParams['font.sans-serif'] = 'SimHei'
# x = df['价格']
# plt.xlabel('菜品价格/元')
# plt.ylabel('菜品数量')
# plt.title('不同价格区间菜品数量分布直方图')
# plt.hist(x,bins=12,color=(0.894,0,0.498),edgecolor='k')
# plt.show()

# import matplotlib.pyplot as plt
# import pandas as pd
# df = pd.read_excel('cjd.xlsx')
# plt.rcParams['font.sans-serif'] = 'SimHei'
# x = df['数学']
# plt.xlabel('数学成绩')
# plt.ylabel('人数')
# plt.title('数学成绩分布直方图')
# plt.hist(x,bins=12,color=(0.6,0,0.4),edgecolor='k')
# plt.show()

import matplotlib.pyplot as plt
import pandas as pd
# 1. 准备数据（可以从Excel读取，这里先用简单数据演示）
# 数据：学科及其对应的成绩
data = {
    '学科': ['语文', '数学', '英语', '物理', '化学'],
    '成绩': [92, 88, 95, 78, 85]
}
df = pd.DataFrame(data)  # 转换为DataFrame，方便处理
# 2. 设置中文显示（避免乱码）
plt.rcParams['font.sans-serif'] = 'SimHei'  # 使用黑体显示中文
# 3. 绘制柱状图
plt.figure(figsize=(8, 5))  # 设置画布大小（宽8英寸，高5英寸）
# 核心绘图：x轴为学科，y轴为成绩，设置柱子颜色和边缘
plt.bar(
    x=df['学科'],  # x轴数据（学科名称）
    height=df['成绩'],  # y轴数据（成绩）
    color='skyblue',  # 柱子颜色（天蓝色）
    edgecolor='black'  # 柱子边缘颜色（黑色，便于区分）
)
# 4. 添加图表细节
plt.xlabel('学科', fontsize=12)  # x轴标签
plt.ylabel('成绩（分）', fontsize=12)  # y轴标签
plt.title('学生各学科成绩对比', fontsize=14, pad=15)  # 标题（pad设置与图表的间距）
plt.grid(axis='y', alpha=0.3, linestyle='--')  # 添加y轴网格线（辅助看数值）
# 5. 显示图表
plt.show()

